Method for activating an application in context on a remote input/output device

ABSTRACT

A computer system is provided including a host computer such as a PC and one or more remote peripheral devices controlled by the host computer for providing status/notification information, applications, system messages, and the like. Software can track the activities/commands of a user. The sequence of activities/commands can be saved and translated into a format that the host computer understands. Responsive to actuation of a button by a user on the remote peripheral device, the host computer can launch directly into the context currently being presented to the user at the remote peripheral device.

CROSS REFERENCE TO RELATED APPLICATIONS

[0001] This application is a continuation-in part of U.S. patentapplication Ser. No. 09/556,982 filed Apr. 24, 2000 and entitled“Auxiliary Display Unit For a Computer System”, and a continuation-inpart of U.S. patent application Ser. No. 09/749,445 filed Dec. 28, 2000,both of which are herein incorporated by reference.

FIELD OF THE INVENTION

[0002] Aspects of the present invention are directed generally toapparatus and methods for a computer network including a host computerand one or more remote peripheral devices. More particularly, aspects ofthe present invention relate to activating an application on the hostcomputer that is the source of the data or notification being previewedat the remote peripheral device.

BACKGROUND OF THE INVENTION

[0003] In existing computer systems, a single monitor or other type ofdisplay unit is connected to a system bus via an interface, such as avideo adapter. The system bus couples the monitor to the centralprocessing unit (CPU) of the host computer. The host computer executesinstructions requesting that information be retrieved from system memoryand sent over the system bus to the display monitor for display.

[0004] One known system provides a computer network having a common CPUthat can be shared among multiple display terminals and keyboards. Inthis system, the display terminals are dumb terminals under the controlof the CPU. Such a system is typically set up for use by multipleindependent users. The advantage of such a system is that the CPU can becentrally located out of sight and away from each of the user'sterminals. Thus, space can be freed up at a user's workstation. Anotheradvantage is that all the applications can be stored in a singlelocation rather than having to be installed separately for each user.User display terminals in this type of system suffer the shortcomingsdiscussed below.

[0005] Computer operating systems typically run multiple applicationsconcurrently and also maintain multiple applications open. When multipleapplications are active or open, various regions of the monitor'sdisplay screen provide information regarding or space dedicated to theactive applications. For example, a task bar and status notificationarea typically occupy reserved sections of the display screen. Email andprinter status/notification usually is represented as a small icon onthe task bar. Also, multiple active applications, for example aspreadsheet application and a word processing application, may occupydifferent sections of the screen. A transient system message may pop upin a dialog box overlaying an active application. Additionally, if auser inserts a compact disc (CD) into a CD player coupled to thecomputer system, a separate soft user interface (UI) applet is launchedon top of the active application(s) taking up more display space on thedisplay screen. Typically, to recover the primary display screen realestate, the user immediately minimizes the applet window in order tocontinue working on an underlying active application such as a wordprocessing application.

[0006] As is readily apparent from the above description of a typicalcomputer system, substantial portions of the display screen may beoccupied by other active applications, dialog boxes, task bars and thelike cluttering the display screen and preventing the user from makingthe most of the display screen for an active application. For example,the user may not want the display screen to show status or notificationinformation or share the display screen area with certain applications.For instance, the user may want to leave substantially all the displayscreen area for a particular application(s) with which he is working.Further, notifications and dialog boxes often can disrupt or distract auser attempting to focus on a specific application. Thus, there is aneed to provide users with the ability to efficiently use and/or managethe display screen of the monitor while still being able to view thestatus of other applications and receive messages about otherapplications, without encroaching on the display screen area. Thedisplay terminals in the computer network described above are controlledindependently. Consequently, one display terminal cannot help toalleviate the display real estate problems associated with a secondterminal.

[0007] Another disadvantage with existing computer systems is thatstatus/notification information cannot be viewed when the displaymonitor is off or in a screen saver mode, or when the host computer isoff. A select few newer operating systems include “hibernate” or “sleep”modes where the host computer periodically wakes up and checks status,for example the computer may check whether an email has been received.Thus, the status/notification functionality is not always available tothe user except in the few systems where the occurrence of an event(e.g., receipt of an email) wakes the system up to indicate the status.Typically in this instance, the system periodically provides anindication of notification/status to the user, thus not always providingthe indication on the display monitor. Accordingly, there is a need toprovide a system in which a user may be able to view status/notificationinformation at all times irrespective of the power status of the maincomputer.

SUMMARY OF THE INVENTION

[0008] Aspects of the invention include providing a remote peripheraldevice with a user interface, such as an auxiliary display unit, in acomputer system in addition to a main or primary display unit in orderto display certain information normally displayed by the main displayunit. Further aspects of the invention involve allowing a user toactivate an application that is the source of the data or notificationcurrently being previewed at a remote peripheral device. Datarepresenting the context of the remote peripheral device is preservedand, based on such data, the source application can be launched at thehost computer (e.g., PC) that is “serving” (i.e., acts as a server to)the remote peripheral device.

[0009] The present invention is directed to one or more remoteperipheral devices for use in a computer system. According to one aspectof the invention, display information normally associated with a taskbar or “system tray” in an operating system (OS) may be displayed on atleast one remote peripheral device's auxiliary display unit rather thanthe main display unit. Alternatively, such display information may bedisplayed on the main display unit and at least one auxiliary displayunit. Illustrative types of information displayed on an auxiliarydisplay unit of a remote peripheral device can include notifications ofevents, such as email events, printer events or calendar events, systemmessages such as dialog box notifications of system events, and date andtime information such as a clock. Display information received fromseparate applications such as stock tickers, weather and traffic reportsmay also be directed to a remote peripheral device.

[0010] According to one aspect of the present invention, software cantrack the activities/commands of a user. The sequence can be saved afterthe activities/commands are translated into a format that the hostcomputer (e.g., desktop PC or host PC) understands. In a further aspectof the invention, a user may press a button on the remote peripheraldevice that causes the host computer to launch directly into the contextcurrently being presented to the user at the remote peripheral device.In another further aspect of the invention, the host computer couldprompt the user to select a single command that causes the computer tolaunch directly into the context currently being presented to the user.

[0011] According to another aspect of the invention, the remoteperipheral device is a separate stand-alone unit that the host computercontrols by way of wireless or wired networks such as Ethernet, RF(radio frequency), IR (infrared) or power line carrier. In yet anotheraspect of the invention, a remote peripheral device may have anauxiliary display unit including an LCD (liquid crystal display), LED(light emitting diode) or EL (electro luminescent) display panel or amonitor type display of any size from a miniature size monitorsubstantially smaller than the main display monitor to a TV size monitorlarger than the main display monitor. A remote peripheral device may bededicated to a single functionality such as only displaying notificationof an email or it may display multiple functionality.

[0012] These and other novel advantages, details, embodiments, featuresand objects of the present invention will be apparent to those skilledin the art from following the detailed description of the invention, theattached claims and accompanying drawings, listed herein, which areuseful in explaining the invention.

BRIEF DESCRIPTION OF THE DRAWINGS

[0013] The foregoing summary of the invention, as well as the followingdetailed description of illustrative embodiments, is better understoodwhen read in conjunction with the accompanying drawings, which areincluded by way of example, and not by way of limitation with regard tothe claimed invention.

[0014]FIG. 1 shows a general-purpose computer system that may be usedwith a remote peripheral device in accordance with embodiments of thepresent invention.

[0015]FIG. 2 shows a block diagram of a remote peripheral deviceaccording to an illustrative embodiment of the present invention.

[0016] FIGS. 3A-C show information depicted on an auxiliary display ofan illustrative remote peripheral device according to embodiments of thepresent invention.

[0017]FIG. 4 shows the flow on a display panel of a remote peripheraldevice according to an illustrative embodiment of the present invention.

[0018]FIG. 5 shows an object sequence diagram in the unified modelinglanguage for an implementation of the illustrative embodiment of FIG. 4.

[0019]FIG. 6 shows the flow on a display panel of a remote peripheraldevice according to another illustrative embodiment of the presentinvention.

[0020]FIG. 7 shows an object sequence diagram in the unified modelinglanguage for an implementation of the illustrative embodiment of FIG. 6.

[0021]FIG. 8 shows an exemplary display screen on a desktop PC accordingto the illustrative embodiment of FIG. 6.

DETAILED DESCRIPTION OF PREFERRED EMBODIMENTS

[0022] The present invention relates to a computer system including ahost computer such as a PC (personal computer) and one or more remoteperipheral devices controlled by the host computer for providingstatus/notification information, applications, system messages, and thelike. The remote peripheral devices may connect to the Internet by wayof the host computer as a gateway. In certain implementations, the hostcomputer may include all the intelligence for the various applicationand the remote peripheral devices will serve as basic I/O devices suchas an LCD, TV output, buttons, speakers, microphones, etc. In addition,the remote peripheral devices according to the present invention may bepracticed with PCs, hand-held devices, multiprocessor systems,microprocessor-based or programmable consumer electronics, network PCs,minicomputers, mainframe computers, and the like, which can be found invarious environments including home or office environments.

[0023] Although not required, portions of the invention may be describedin the general context of computer-executable instructions, such asprogram modules. Generally, program modules include routines, programs,objects, scripts, components, data structures, etc. that performparticular tasks or implement particular abstract data types. Moreover,those skilled in the art will appreciate that the invention may bepracticed with any number of computer system configurations including,but not limited to, distributed computing environments where tasks areperformed by remote processing devices that are linked through acommunications network. In a distributed computing environment, programmodules may be located in both local and remote memory storage devices.

[0024]FIG. 1 is a schematic diagram of a computing environment withwhich the present invention may be implemented. The present inventionmay be implemented within a general purpose-computing device in the formof a conventional personal computer 200, including a processing unit210, a system memory 220, and a system bus 230 that couples varioussystem components including the system memory to the processing unit210. The system bus 230 may be any of several types of bus structuresincluding a memory bus or memory controller, a peripheral bus, and alocal bus using any of a variety of bus architectures. The system memoryincludes read only memory (ROM) 240 and random access memory (RAM) 250.

[0025] A basic input/output system 260 (BIOS), containing the basicroutines that help to transfer information between elements within thepersonal computer 200, such as during start-up, is stored in ROM 240.The personal computer 200 further includes a hard disk drive 270 forreading from and writing to a hard disk, not shown, a magnetic diskdrive 280 for reading from or writing to a removable magnetic disk 290,and an optical disk drive 291 for reading from or writing to a removableoptical disk 292 such as a CD ROM or other optical media. The hard diskdrive 270, magnetic disk drive 280, and optical disk drive 291 areconnected to the system bus 230 by a hard disk drive interface 292, amagnetic disk drive interface 293, and an optical disk drive interface294, respectively. The drives and their associated computer-readablemedia provide nonvolatile storage of computer readable instructions,data structures, program modules and other data for the personalcomputer 200.

[0026] Although the exemplary environment described herein employs ahard disk, a removable magnetic disk 290 and a removable optical disk292, it should be appreciated by those skilled in the art that othertypes of computer readable media which can store data that is accessibleby a computer, such as magnetic cassettes, flash memory cards, digitalvideo disks, Bernoulli cartridges, random access memories (RAMs), readonly memories (ROMs), and the like, may also be used in the exemplaryoperating environment.

[0027] A number of program modules may be stored on the hard disk,magnetic disk 290, optical disk 292, ROM 240 or RAM 250, including anoperating system 295, one or more application programs 296, otherprogram modules 297, and program data 298. A user may enter commands andinformation into the personal computer 200 through input devices such asa keyboard 201 and pointing device 202. Other input devices (not shown)may include a microphone, joystick, game pad, satellite dish, scanner,or the like. These and other input devices are often connected to theprocessing unit 210 through a serial port interface 206 that is coupledto the system bus, but may be connected by other interfaces, such as aparallel port, game port or a universal serial bus (USB). A monitor 207or other type of main display unit is also connected to the system bus230 via an interface, such as a video adapter 208. Also, coupled to thesystem bus 230 is a remote peripheral device 307 via a peripheralinterface 314. The peripheral device may be a peripheral input/output(i/o) device such as an auxiliary display unit (e.g., LCD), microphone,speakers, TV output, combinations of these elements, etc.

[0028] The peripheral interface 314 can couple the processing unit 210to the remote peripheral device 307 in various ways. It should beunderstood that the terms “couple,” “coupling”, “coupled” andgrammatical variations thereof as used herein mean all known wired andwireless connections. Interfaces between the remote peripheral device307 and the personal computer 200 include, but are not limited to, anexpansion card, standard communication interfaces such as serial,parallel, 1394, or USB (universal serial bus) connectors, IR, Ethernet,RF or Power Line Carrier.

[0029] The personal computer 200 may operate in a networked environmentusing logical connections to one or more remote computers, such as aremote computer 209. The remote computer 209 may be another personalcomputer, a server, a router, a network PC, a peer device or othercommon network node, and typically includes many or all of the elementsdescribed above relative to the personal computer 200, although only amemory storage device 211 has been illustrated in FIG. 1. The logicalconnections depicted in FIG. 1 include a local area network (LAN) 212and a wide area network (WAN) 213. Such networking environments arecommonplace in offices, enterprise-wide computer networks, intranets andthe Internet.

[0030] When used in a LAN networking environment, the personal computer200 is connected to the local network 212 through a network interface oradapter 214. When used in a WAN networking environment, the personalcomputer 200 typically includes a modem 215 or other means forestablishing a communications over the wide area network 213, such asthe Internet. The modem 215, which may be internal or external, isconnected to the system bus 230 via the serial port interface 206. In anetworked environment, program modules depicted relative to the personalcomputer 200, or portions thereof, may be stored in the remote memorystorage device. It will be appreciated that the network connectionsshown are exemplary and other means of establishing a communicationslink between the computers may be used.

[0031] The remote peripheral device 307 provides information under thecontrol of the host computer (e.g., PC). The host computer peripheralinterface 314 may be an RF link module for communicating with the remoteperipheral device 307. The host computer peripheral interface 314 can beadapted for an expansion card and standard communication interfacesknown in the art such as serial, parallel, 1394, or USB, IR, Ethernet,RF or Power Line Carrier.

[0032] In an illustrative implementation of the invention, the remoteperipheral device 307 may include an auxiliary display unit, whichdisplays information under the control of the host computer. FIG. 2shows an exemplary remote peripheral device 307 including an auxiliarydisplay unit. In the illustrative embodiment of FIG. 2, the remoteperipheral device includes an interface 310 including an RF interface313 and a USB interface 314 for communicating with the host PC.Particularly, the RF interface 313 communicates with the host computerby way of the RF link module 330. The RF link module 330 may be coupledto a server by way of a standard wired connection, such as 10Base-T,100Base-T, 1000Base-T, etc. When coupled to a server, the host computermay be one of plural host computers coupled to a server. Alternatively,the RF link module 330 may be external to the host computer, and withinbroadcast range of the RF interface 313 of the remote peripheral device307. In this arrangement, a standard wired connection, such as 10Base-T,100Base-T, or 1000Base-T can be used to provide signaling between the RFlink module 330 and the host computer.

[0033] The interface 310 is coupled to a CPU 316. The CPU 316 is coupledto local memory such as RAM/ROM 318. The CPU 316 receives the commandsthrough the interface 310 from the host PC and interacts with localmemory, e.g., RAM/ROM 318 as necessary and causes the appropriatecommands to be directed to a graphics module 320, which in turngenerates an appropriate display to be shown on the display panel 324.Also, the CPU 316 is coupled to an I/O module 322, which can receiveuser input through buttons and volume knob 326, such as by way of a userturning the volume knob or actuating one of the buttons. The CPU 316 mayoutput information through the I/O module 322. For example, audio may beoutput or a button may be illuminated. It should be understood thatbuttons and volume knobs are illustrative input/output devices and thatthe present invention is not so limited. For example, the I/O module 322and graphics module 320 may both be connected to the display panel 324,where inputs may be received by way of a touch screen. Further, I/Omodule 322 may be connected to a microphone, speakers, an IR (infrared)sensor device that can identify a user, a camera, keypad, etc.

[0034] Remote peripheral devices may be implemented in many devicesincluding, but not restricted to, various kitchen appliances,communication devices (e.g., cable, satellite, and Internet televisions,satellite or Internet radios, and mobile and landline communicationunits), security systems, electronic game equipment, electronic pictureframes, web companions and Internet appliances. These devices may befixed or some may be used portably such as a wristwatch or handheldInternet appliance. Further, many elements may be coupled to the I/Omodule 322 of the remote peripheral device including, but not limitedto, a camera and motion sensor (e.g., for a security system), Internetappliances, electronic game equipment, and wireless (e.g., IR and RF)remote control devices (e.g., for an MP3 player, CD player, Internetappliance, radio, television, electronic game equipment, VCR, etc.).

[0035] In the illustrative remote peripheral device shown in FIG. 2, acamera and microphone/speaker can be coupled, as shown by the dottedlines, to the remote peripheral device for receiving audio and videoinput and generating audio and video output. The display panel 324 maybe configured to have a touch screen display, a video camera-intercomsystem, email notification on the display panel in the form of video ortext, or audio output by a speaker. The display panel 324 may be adisplay dedicated for or adapted to display information for an MP3, DVD,CD player, or electronic picture frame coupled directly to the remoteperipheral device 307 or the host computer 200. The display panel may beadapted for multiple types of information included, but not limited to,calendar information, number of voice mail messages, number of emailmessages, time-of-day, and information regarding a multimedia player.Illustrative display panels containing multiple types of information aredepicted in FIGS. 3A-C.

[0036] In addition as shown in the FIG. 2 embodiment, a modem (e.g.,56k) 315 may be coupled to the CPU 316 and the interface 310. Responsiveto a command received from the host computer 200 or the CPU 316, themodem 315 can connect the remote peripheral device 307 to the Internetor other data communication networks without having to route theinformation through the host computer. This implementation may beparticularly beneficial when multiple Internet connections (e.g., phonelines, DSL, cable-modem, ISDN) are available and in use. Namely, a userof the remote peripheral device may not have to share bandwidth with auser of the main display monitor or another remote peripheral device whoaccesses the Internet via the host computer. The host computer can sendcommands instructing the remote peripheral device to initiate its ownconnection to the Internet. Also, the remote peripheral device may beseparately addressable and capable of receiving information directlyfrom the Internet such as “push” type data including stock tickerinformation, sports scores, news, etc.

[0037] The remote peripheral device 307 can be set to receive displayinformation that may have been part of the domain of the main displayunit 207 in conventional computer system environments. For example, theresponsibility for displaying information regarding separateapplications (e.g., stock tickers, weather reports, and traffic reports)may be assigned to one or more remote peripheral devices 307. Also, theremote peripheral device 307 could receive display information normallyassociated with the task bar, system messages and notification of events(e.g., time, power status, email and messaging notification, printerinformation, volume control, dialog box notifications of system eventsetc.) on the main display unit 207. In an illustrative embodiment, thedisplay panel 324 can function as the UI for Internet radio andtelevision, video, “push information”, or an MP3 player. The displaypanel UI may span from simple LED notifications to text-to-speechconversion of incoming email messages, to a full UI with a touch panelinterface and a graphics picture frame. Also, the remote peripheraldevice display panel UI can include one or more of an LCD, TV output,buttons, speakers, microphones, etc

[0038] A remote peripheral device may be responsible for a single ormultiple applications, system messages, notifications and the like. Forexample, an email, word processing or financial application may appearonly on the display panel of the remote peripheral device and not appearon the main display unit. Further, input from a user may be receivedfrom an input device coupled to the remote peripheral device, the hostcomputer or both. The host computer can be configured manually ordynamically to route display functionality to the remote peripheraldevice. In certain configurations, responsibility for an emailapplication may be routed to one or more remote peripheral devices bydefault.

[0039] According to an implementation of a remote peripheral device,when the main display 207 is in a screensaver or off mode or the hostcomputer is not on or in a hibernate mode, sufficient hardware andsoftware functionality can be provided to allow the remote peripheraldevice to bypass the host computer and connect directly to the server(Internet or local) to operate autonomously, that is perform a specificapplication such as checking email status. Such a mode of operation canfunction with external cameras. For example, if a doorbell rings, theuser can view who is at the door with a remote peripheral device capableof displaying video images (still and moving). Further, such a remoteperipheral device may also display JPEG or other image formats andfunction as an electronic picture frame.

[0040] According to illustrative implementations of the presentinvention, functionality can be routed to a remote peripheral device inlieu of providing the functionality simultaneously at the host computer.For example, this can occur when the host computer (e.g., host PC ordesktop PC) is off, in a hibernate mode or has otherwise assignedfunctionality to the remote peripheral device. Certain remote peripheraldevices will have a smaller and less sophisticated UI when compared tothe host computer. In this instance, a user may desire to receive (e.g.,view) the information on the richer host computer UI. In otherinstances, a user may simply be moving to a location proximate to thehost computer UI and desire to have the information presented on theremote peripheral device UI presented on the host computer UI.

[0041] In the above-described illustrative system, the remote peripheraldevices functions as separate, stand-alone devices that a host computercontrols by way of wireless or wired networks. Consequently, the usermay be remote from the host computer and its main display unit, butstill receive notification/status information through a remoteperipheral device. The remote peripheral device may include an auxiliarydisplay unit having an LCD (liquid crystal display), LED (light emittingdiode) or EL (electro luminescent) display panel or a monitor typedisplay of any size from a miniature size substantially smaller than themain display monitor to a TV size monitor larger than the main displaymonitor. Information that can be displayed by the remote peripheraldevice depends on the type of the unit and can range from notificationof events such as receipt of email and appointments to information fromseparate applications.

[0042] In certain implementations, the user interface (UI) may be verysmall and may merely provide notification of an event. In this instance,if a user is notified that he or she has received an email, to read theemail, the user may need or desire to walk over to the host computer andview the information on the main display unit. To actually end up at thesame context as the remote auxiliary display unit however, the user mustgo through a series of steps. These steps can include 1) going to thephysical host computer; 2) booting up the host computer if not presentlyactive; 3) search for the application which initiated the notification;and 4) drill down to the desired information/data point, for example byway of a series of mouse clicks and/or keyboard entries.

[0043] Having to execute a series of steps can be cumbersome andtime-consuming and generally inefficient. Indeed, in certain situations,searching for the application that caused the notification to begenerated may be difficult as well. For example, the user may be advisedof breaking news at their remote peripheral device auxiliary displayunit, but may not actually be aware of the source (e.g., URL) of thebreaking news. Thus, the user may have to access several different URLsto determine the news source. Hence, the user would have to “replicate”the events/activities carried out to get to the same context point onthe host computer browser as the remote peripheral device. Accordingly,in another implementation of the present invention, a system is providedto minimize the steps required to reach the same context point on a hostcomputer, such as a desktop PC or host PC, which has already beenreached on a remote peripheral device. This implementation allows asimple, fast user interface to the desired data and involves softwarethat tracks the user activities/commands and saves the sequence aftertranslating the activities/commands into a format that the host computerand its browser understands.

[0044] According to an illustrative implementation of the presentinvention, the steps required to reach a context on a host computer suchas a desktop PC or host PC can be aggregated so as to be reduced down toa single query. The single query may be activated by, for example,actuation of a single activation button. The query may be formed byremembering each of the activations from the UI of the remote peripheraldevice and building a query that is understandable by the host computerand its appropriate application (e.g., browser).

[0045] The single click activation at the host computer may includecarrying out several steps, with the final step arriving at the context.In an illustrative embodiment, the user interface in the remoteperipheral device may be considered as a micro-browser interface andrequire several steps to check email messages.

[0046]FIGS. 4 and 6 show the flow on a display panel for an exemplaryremote peripheral device in illustrative implementations of theinvention. A HOME screen of the display panel may display statusinformation such as time, date and weather and soft labels identifyingfour users (e.g., User1, User2, User3, User4). In an illustrativeimplementation, color may be used in the UI, where each user is assigneda specific color. The color may be used to notify the user when newinformation for him or her is present. In this instance, a button belowthe user's name can light up with an LED matching their assigned coloror the background of the display region surrounding their respectivename may be illuminated with their assigned color.

[0047] Responsive to actuation of the button corresponding to the softlabel User1, the soft labels change context to identify the personalizedapplications for User1 as shown in the user's customized USER STATUSscreen depicted in FIG. 4 and FIG. 6. The applications may include, butare not limited to, messages, calendar, news and music. It will beappreciated that content may be customized from within an application onthe host computer. Content that can be personalized includes, but is notlimited to, the HOME screen, the types of content displayed, thelocation of the content within the UI and the content of the respectiveuser status.

[0048]FIG. 4 is directed to an exemplary email message implementation ofthe invention. Responsive to actuation of the button corresponding tothe soft label Messages, the email message application is launched andan EMAIL LIST screen is displayed on the display panel including a listof emails directed to User1 and four exemplary soft labels, Preview,Read Aloud, Open on PC and Chat, which represent actions selectable bythe user. While the illustrative display panel of the EMAIL LIST screenshows three messages, it will be appreciated that other messages may bedisplayed by scrolling through the message list with an input (notshown), which moves a cursor to highlight a message. For example,actuation of a scrolling button once may result in the highlighting of asecond message's author and subject on the list, actuation of thescrolling button a second time may result in highlighting of the authorand subject associated with a third message, and actuation of thescrolling button a fourth time can cause the author and subject of afourth message to appear on the display and be highlighted whileremoving the author and subject of the first message.

[0049] Actuation of the button corresponding to the soft label Open onPC causes a messaging application to be launched on the host computer,which is coupled to the remote peripheral device. The highlighted(selected) message is displayed on the UI associated with the hostcomputer and the context of the user's location is preserved. Also, theOPEN ON PC (ALERT) screen can be provided on the display panelindicating that the highlighted message is being opened on the hostcomputer.

[0050] Thus, the illustrative embodiment of FIG. 4 shows four stepsassociated with an illustrative UI display panel of a remote peripheraldevice, which may be involved in checking an email message. The steps tocheck email messages in the FIG. 4 example include: 1) selection ofnotification name (User1); 2) selection of Messages button; 3) movingthe cursor to the desired item in the email list; and 4) displaying theemail subject header. According to this implementation of the invention,the accompanying software that drives the UI from, for example, the hostcomputer translates the first three steps carried out by the user into asingle query that the messaging application (e.g., Outlook® byMicrosoft) on the host computer can understand. Next, the Open on PCoption is made available on the remote peripheral device UI, whichprovides the single point activation. By actuation of the button, thehost computer can launch directly into the current context by launchingthe messaging application, resulting in the selected message from theEMAIL LIST screen being displayed on the display associated with thehost computer.

[0051]FIG. 5 shows an object sequence diagram in the unified modelinglanguage depicting the sequence of activities in connection with theillustrative implementation of the invention shown and described in FIG.4. One skilled in the art of computer programming would readably be ableto write code from the unified modeling language to perform the actionsshown in FIG. 5. Seven objects are shown in FIG. 5 including userobject, screen object, home page object, inbox page object, inboxobject, message object, and desktop mail client object. The user objectrepresents the actual user and the screen object is a screen manager,which represents a device driver. The buttons are identified from leftto right as buttons 0-3 for purposes of this description.

[0052] In FIG. 5, it is assumed that the action of selecting a user(User1, User2, User3, User4) in connection with FIG. 4 has already beenperformed. On the screen is displayed a USER STATUS page, which may be auser home page. The screen object provides selectable events on thescreen including Messages in FIG. 4, corresponding to “open inbox”. Uponactuation of the button(0) corresponding to Messages (“open inbox”)associated with the home page object, the software can then break downthe user action as follows, 1) the inbox page object (EMAIL LIST in FIG.4) is opened; and 2) the inbox page object retrieves the number of newmessages and messages from the inbox object and the sender and subjectof the messages from the message object. Upon actuation of the button(2)corresponding to Open on PC (“open message on PC”) button associatedwith the inbox page object, the messageID (e.g., U34379126333532956) forthe highlighted message is obtained from the message object and thedesktop mail client object opens the message corresponding to themessageID on the desktop PC (i.e., host computer).

[0053] The illustrative implementation described with respect to FIG. 5can be used for a message item that is given a unique ID by the messageserver. In this implementation, when a leaf-node item is reached in themicro-browser interface, the Open on PC command will become available.The micro-browser can acquire an identification token representing theleaf-node message item. When the user selects “Open on PC” in themicro-browser, the message identification token is fed back into themessaging client to open the associated item on the desktop withoutrequiring the user to navigate through the messaging client's UI. Thus,the same context at the micro browser is presented at the host computer.The content may be the same, less rich or richer, although in most casesit is expected that the host computer UI will be richer than the UI ofthe remote peripheral device.

[0054] In another implementation, which could be used with FIG. 5, theuser can navigate to a messaging item that is not directly accessible bya unique id. This may occur when the messaging server does not assign aunique ID to the message. The steps to navigate to the message can beencoded as steps to navigate to the item. For example, open the thirditem in the second subfolder in the inbox folder of user User1.According to this implementation, the micro-browser accumulates a paththrough the automation object model of the messaging client as the usernarrows her choices to a single leaf-node item (e.g., an email item orcalendar appointment). The accumulated object model path represents theidentity of a messaging item. When a leaf-node item is reached in themicro-browser interface, the “Open on PC” command will become available.When user presses “Open on PC” in the micro-browser, the object modelpath is fed back into the messaging client to open the associated itemon the desktop (host computer) without requiring the user to navigatethrough the messaging client's UI.

[0055] In another illustrative implementation of the invention shown inFIG. 6, the user may activate a news item on an Internet site (e.g.,msnbc.com, cnn.com). Responsive to actuation of the button correspondingto the soft label News, the news application is launched and a NEWS HOMEscreen is displayed on the display panel including a list of threeitems: weather forecast, stock ticker and top story and three exemplarysoft labels, Story, Weather, and Stock, which represent actionsselectable by the user. Responsive to actuation of the buttoncorresponding to the soft label Story, the STORY HEADLINES screendisplays three news headlines and one soft label, “View Story”. Whilethe illustrative display panel of the HEADLINES screen shows threeheadlines, it will be appreciated that other headlines may be displayedby scrolling through the headline list with an input (not shown), whichmoves a cursor to highlight a headline in the same manner as describedwith respect to the EMAIL LIST screen.

[0056] Responsive to actuation of the View Story Button, a STORY PREVIEWscreen displays the abstract of the story selected and soft labels PrevStory, Next Story and Open on PC. Actuation of the button correspondingto the soft label Open on PC causes the News application to be launchedon the browser of the host computer, which is coupled to the remoteperipheral device. This causes the context of the user's location to bepreserved and displays the news story to the user on the host computerbrowser. Also, the OPEN ON PC (ALERT) screen can be provided on thedisplay panel of the remote peripheral unit indicating that thehighlighted (selected) news story is being opened on the host computer.

[0057]FIG. 7 shows an object sequence diagram in the unified modelinglanguage depicting the sequence of activities in connection with theillustrative implementation of the invention shown and described in FIG.6. Nine objects are shown in FIG. 5, user object, screen object, homepage object, news summary page object, news feed object, headlinesobject, story abstract object, story page object and desktop browserobject. The user object represents the actual user and the screen objectis a screen manager, which represents a device driver. The buttons areidentified from left to right as buttons 0-3 for purposes of thisdescription.

[0058] In FIG. 7, it is assumed that the action of selecting a user(User1, User2, User3, User4) in connection with FIG. 6 has already beenperformed. On the screen is displayed a USER STATUS page, which may be auser home page. The screen object provides selectable events on thescreen including News in FIG. 6, corresponding to “show news summaryinbox”. Upon actuation of the button(2) corresponding to News (“shownews summary”) associated with the home page object, the software canthen break down the user action as follows, 1) the news summary pageobject (NEWS HOME in FIG. 6) is opened; and 2) the news summary pageobject retrieves the weather forecast, stock ticker, and top story fromthe news feed object. Next, responsive to actuation of button(0)corresponding to Story (“show headlines”) associated with news summarypage object, the software breaks down the user action as follows: theheadlines page object (HEADLINES in FIG. 6) is opened and the headlinespage object retrieves the headlines from the news feed object and storyabstract object. Then, responsive to actuation of button(0)corresponding to View Story, the software breaks down the user action asfollows: 1) the abstract URL is obtained from the story abstract object;and 2) the story page object opens the abstract URL and gets theabstract and abstract text from the story abstract object. The format ofthe abstract text may be in XML. XML allows the remote device to renderthe abstract text to be compatible with smaller displays. Upon actuationof the button(2) corresponding to Open on PC (“open story on PC”) buttonassociated with the story page object, the story URL is obtained fromthe story page object and the desktop browser object opens the browserof the desktop PC to the URL corresponding to the story. The format ofthe story can be HTML. FIG. 8 shows an illustrative correspondingdisplay screen on the desktop PC upon linking to the final story URL.

[0059] Thus, the illustrative implementation in FIGS. 6 and 7 shows auser navigating to a news item via micro-browser interface. In thisexample, the micro-browser accumulates the user's navigation choices inthe form of a URL query string. When the user reaches a leaf-node item(e.g., a news headline, a stock ticker symbol, a city), the query stringis considered to be complete and valid, and the “Open on PC” commandwill become available in the micro-browser's user interface. The querystring represents the state of the micro-browser at the time of the“Open on PC” command, namely the user's choices have been captured in aform that the host computer and Internet site can understand. The querystring does not necessarily represent the same path that themicro-browser used to retrieve that information. Instead, the querystring is an equivalent query that will produce the equivalent result inthe desktop browser to reach the same context. The desktop browser canbe invoked with the accumulated URL query string, and then can retrievethe selected news item without requiring the user to navigate throughthe desktop browser's UI.

[0060] It will be appreciated that the exemplary implementations of theinvention described with reference to FIGS. 4 and 6 are not limited to adesktop PC, but may be applied to other types of remote peripheraldevices including a remote peripheral device with a richer UI or lessrich UI.

[0061] In an alternative implementation of the present invention, an“Open on Other Device” command may be provided where the user can drilldown to a next selection option of selecting between opening on hostcomputer or opening on one or more other remote peripheral devices. Theother remote peripheral devices available may include remote peripheraldevices having the same UI, a less rich UI or a richer UI as the remoteperipheral device. In such an implementation, the other remoteperipheral devices available may be a function of the physical locationof the remote peripheral device. For example, selection of a particulardevice type can cause the application to be opened on the closest remoteperipheral device (e.g., monitor, TV, etc.) of the type selected.Determinations as to locations of devices including GPS, signal strengthmeasurements, etc. are well known in both wired and wireless networks,and thus such implementation would be readily apparent to the skilledartisan. Also, when a particular device type is selected such as amonitor, the remote peripheral device UI can present the user with aselection option as to the available monitors (e.g., kitchen, bedroom,family room).

[0062] Although the invention has been defined using the appendedclaims, these claims are exemplary in that the invention may be intendedto include the elements and steps described herein in any combination orsub combination. Accordingly, there are any number of alternativecombinations for defining the invention, which incorporate one or moreelements from the specification, including the description, claims, anddrawings, in various combinations or sub combinations. It will beapparent to those skilled in the relevant technology, in light of thepresent specification, that alternate combinations of aspects of theinvention, either alone or in combination with one or more elements orsteps defined herein, may be utilized as modifications or alterations ofthe invention or as part of the invention. It may be intended that thewritten description of the invention contained herein covers all suchmodifications and alterations.

We claim:
 1. In a computer system including a host computer, a maindisplay unit and a remote peripheral device associated with an auxiliarydisplay unit, the remote peripheral device communicating with the hostcomputer, a method comprising: providing on the auxiliary display unitnotification of an event; responsive to a first user input at the remoteperipheral device, displaying on the auxiliary display unit informationassociated with the event; forming a query based upon the first userinput; and responsive to a second user input at the remote peripheraldevice, executing the query to cause an application associated with theevent to be launched by the host computer.
 2. The method according toclaim 1, wherein the event represents receipt of a message.
 3. Themethod according to claim 2, wherein said executing includes displayingthe message on the main display unit.
 4. The method according to claim2, wherein the event represents receipt of a calendar message.
 5. Themethod according to claim 1, wherein the notification comprises a visualsignal.
 6. The method according to claim 1, wherein the notificationcomprises an audio signal.
 7. The method according to claim 2, whereinthe information includes subject and author of a message.
 8. The methodaccording to claim 1, where the first user input includes plural userinputs.
 9. The method according to claim 8, wherein the second userinput includes a single user input.
 10. The method according to claim 1,wherein the application is a calendar application.
 11. The methodaccording to claim 1, wherein the application is an Internet browser.12. The method according to claim 1, wherein the application is amessaging application.
 13. The method according to claim 1, wherein theevent is a news event and the information includes news information. 14.The method according to claim 1, wherein said executing includesdisplaying the information on the main display unit.
 15. A computerreadable medium having computer-executable instructions for performingthe steps recited in claim
 1. 16. The method according to claim 1,further including displaying on the auxiliary display unit a pluralityof first soft labels representing a plurality of applications, includingthe application associated with the event; responsive to actuation of afirst button on the remote peripheral device associated with one of thefirst soft labels representing the application, displaying on theauxiliary display unit a plurality of second soft labels, each secondsoft label representing a different function within the application, thesecond soft labels replacing the first soft labels on the auxiliarydisplay unit; and responsive to actuation of a second button on theremote peripheral device associated with one of the second soft labels,executing a function within the application on the remote peripheraldevice, wherein the first user input includes actuation of the firstbutton followed by actuation of the second button.
 17. In a computersystem including a host computer and first and second input/outputdevices, a method comprising: providing first information in a contextat the first input/output device in response to a first user input;forming a query associated with providing said context at the firstinput/output device; and responsive to a second user input, launching anapplication based on the query to provide second information in saidcontext at a second input/output device.
 18. The method according toclaim 17, wherein the first and second input/output devices are remoteperipheral devices.
 19. The method according to claim 17, wherein thefirst input/output device is a remote peripheral device and the secondinput/output device is part of the host computer.
 20. The methodaccording to claim 17, wherein the second information includes richercontent than the first information.
 21. The method according to claim17, wherein the application is a browser.
 22. The method according toclaim 17, wherein the application is a messaging application.
 23. Themethod according to claim 22, wherein the information includes subjectand author of a message.
 24. The method according to claim 17, whereinthe second user input is a single user input.
 25. The method accordingto claim 17, wherein the first user input includes plural user inputs.26. The method according to claim 17, wherein said forming the queryincludes translating the first user input into instructions understoodby the host computer.
 27. The method according to claim 17, wherein thefirst and second information are news information, the first informationincluding a news story headline and the second information including thenews story.
 28. The method according to claim 17, wherein the first andsecond information are news information, the first information includingan abstract of a news story and the second information including a fullversion of the news story.
 29. A computer readable medium havingcomputer-executable instructions for performing the steps recited inclaim
 17. 30. The method according to claim 17, wherein the second userinput identifies an input/output device type, said method furthercomprising, responsive to the second user input, determining that thesecond input/output device type is the closest input/output device tothe first input/output device of the identified type.
 31. The methodaccording to claim 17, wherein the query is a URL query string.
 32. In acomputer system including a host computer, a main user interface and aremote peripheral device associated with an auxiliary user interface,the remote peripheral device in communication with the host computer, amethod comprising: storing activations from the auxiliary user interfaceto obtain a context; building a query from the activations, the querybeing understood by the host computer; and responsive to a singleactivation from one of the main user interface or the auxiliaryinterface, executing the query to provide the context on the main userinterface.
 33. The method according to claim 32, wherein the context isa browser context.
 34. The method according to claim 32, wherein thecontext is in a messaging application context.
 35. A computer readablemedium having computer-executable instructions for performing the stepsrecited in claim 32.